'use strict';

const Controller = require('egg').Controller;

class HomeController extends Controller {
    async index() {
        const { ctx } = this;
        ctx.body = 'hi, egg';
    }

    async login() {
        // 解析参数
        const { username, password } = this.ctx.request.body;
        // 非空校验
        // 查询用户是否存在
        const user = await this.service.user.findByUsername(username);
        // 不存在
        if (!user) {
            // ...
        }
        // 存在校验密码
        if (user.password !== password) {
            // ...
        }
        // 生成 token
        const token = this.ctx.helper.genToken({ ...user });
        // 返回
        this.ctx.body = {
            code: 200,
            data: {
                token,
                user,
            },
            message: '登录成功',
        };
    }
}

module.exports = HomeController;
